In order to achieve an intelligent robot that has advanced intellectual abilities, a recognition and plan processing system for performing intelligent processing of recognition of the outside world, task planning, motion planning, and so on is needed in addition to the motion control system for performing the motion control.
As a structure for providing a controller for such an intelligent robot, the structure shown in FIG. 10 can be considered. In FIG. 10, the controller is constructed so that an input/output interface 104 connected to an object 105 to be controlled, a motion control means 101 connected to the input/output interface 104, a shared memory 103 connected to the motion control means 101, and a recognition and planning means 102 connected to the shared memory 103 are arranged connected in series.
The motion control system, which performs the motion control of the robot, is required to have a real-time performance and therefore implemented by the motion control means 101 constructed of a processing system that directly executes a control program or a system that employs a real-time OS, using no operation system (OS).
On the other hand, the processing of the recognition, the task and motion planning, and so on do not need the real-time performance and is preferably constituted of a computer system of, for example, a personal computer or a work station equipped with a general-purpose multi-task OS in terms of the development environment of software, high-speed processing abilities, and so on. The recognition and planning means denoted by the reference numeral 102 is implemented by a processing system that operates parallel independently of the motion control means 101.
When such a parallel hierarchy structure of the motion control means 101 and the recognition and planning means 102 is adopted, an issue of timewise delivery timing occurs when, for example, a desired trajectory generated by the recognition and planning program of the recognition and planning means 102 is transferred to the motion control means 101.
With regard to this issue, in the controller shown in FIG. 10, the controller has a shared memory 103 and the recognition and planning means 102 writes the desired trajectory into the shared memory 103, and the motion control means 101 achieves timewise timing buffering by reading the desired trajectory from the shared memory 103 (refer to, for example, Japanese Unexamined Patent Publication No. H06-290060 A).
In the controller shown in FIG. 10, a common bus system is adopted in terms of extendibility as a method for connecting the motion control means 101, the recognition and planning means 102, and the shared memory 103.
However, the conventional structure causes an issue that a data transfer wait time is generated due to the conflict of the bus failing in securing the real-time performance if it is attempted to take in a plurality of images or high-definition images by a plurality of imaging devices and handle a large amount of data for the achievement of further advanced intelligence.
Providing a bus exclusive for image transfer or providing a bus exclusive for connections among the means to prevent the above issue causes the complication of the system like an increase in the number of bus wiring lines and so on, and this is also disadvantageous in terms of the extendibility of the system.
Accordingly, the object of the present invention is to solve the issues of the conventional structure and provide a robot controller capable of handling a large amount of data of images and so on necessary for advanced intelligence of control while securing a real-time performance with a simple structure.